什么是数据库?Python操作数据库难吗(19) 您所在的位置:网站首页 qt难学还是c 难学 什么是数据库?Python操作数据库难吗(19)

什么是数据库?Python操作数据库难吗(19)

#什么是数据库?Python操作数据库难吗(19)| 来源: 网络整理| 查看: 265

小朋友们好,大朋友们好!

我是猫妹,一名爱上Python编程的小学生。

欢迎和猫妹一起,趣味学Python。

今日主题

今天我们学习下什么是数据库,以及如何用Python操作数据库。

数据库=数据+库

库,汉语常用字(一级字),读作kù,最早见于战国文字,会意兼形声字。

原义为收藏兵车及其他武器的处所;后来泛指收藏各种物品的处所;又指监狱。

车库是存放车的场所。

粮库是存放粮的场所。

水库是存放水的场所。

小金库是存放钱的场所。

数据库呢?

自然是存放数据的场所。

数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。

小点的数据可能放在记事本中、word、ppt等软件中,大量的数据呢?

一般都是保存到数据库中。

数据库其实就在我们身边,你想想,你登录一个网站或是APP,输入用户名和密码,点击下回车,信息正确登录成功,信息错误登录失败。

几百万、几千万、甚至上亿的信息存放在哪里呢?

这些信息就存放在数据库中,这些信息包括用户名、密码、性别、地址、商品描述、图片等诸多信息。

如何在几百万、几千万、上亿的海量数据中,瞬间找到你输入的数据,然后判断是否匹配,想想就是搞科技啊!

的确,数据库是一门高科技。

常见的数据库

常见的数据库有哪些呢?

我们一起学习下。

Oracle应该是世界上最大的数据库公司,一般超大规模数据会用到oracle。

微软的SQl Server,一般中等规模数据会用到SQL Server。

微软的商业化产品,微软sql语句兼容性好,商业化成熟度高。

微软的Access,小巧,简单易用,office系列之一。

MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型和大型网站的开发都选择 MySQL 作为网站数据库。

MySQL 在 2008 年被Sun以10亿美金所收购,2009年4月20日Sun被甲骨文收购。

SQLite,是一款轻量型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。

它的设计目标是嵌入式的,而且已经在很多嵌入式产品中使用了它,它占用资源非常的低,可能只需要几百K的内存就够了。

它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。

MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。

MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

操作数据库

上面一下子粗略介绍了那么多数据库,是不是有点懵?

对于非专业人员来讲,只要会简单使用就可以了。

专业人员,要学习很多知识呢。

咱们今天就用SQLite为例子,学习下数据库的常用操作。

其他的数据库需要下载安装软件,咱们今天只是简单了解, 就不下载安装包了。

Python本身已经内置了SQLite,不需要安装,可以直接使用哦!

数据库、数据表、字段、记录等,我们先对这几个名字有个大概的印象。

举个例子,猫妹班级的语文成绩、英语成绩、数学成绩。

先有个数据库,猫妹班级成绩。

数据库中是数据表,这里有三张表,语文成绩、数学成绩、英语成绩。

表中有字段和记录,语文成绩中的学号、姓名、成绩是字段。

学号01,姓名猫妹,成绩85,这表示语文成绩表中的一条记录。

学号不允许有重复值,可以作为主键。

创建数据库

1行:需要导入sqlite3模块。

4行:需要先用connnect创建一个connection对象。

如果数据库文件lvye.db存在,则连接上它。

如果不存在,则创建后连接上它。

6行:创建cursor,中文是游标,我们都是通过游标来访问数据表的,比如增删改查。

8行:执行sql语句,这些语句是创建了一个表table,这个表中有id(主键)、姓名name、年龄age。

啥是主键呢?就是不能重复。

比如身份证号可以作为主键,而姓名不可以。

id类型是int,name类型是varchar,age类型是int。

12行:关闭游标。

14行:关闭connection。

如果再次运行会报如下错误:

这是因为该数据中已经存在 student table了,同一个数据库中不能存在两个同名的数据表。

增删改查操作

数据库中存放的是数据表,数据表中存放的是数据。

对数据表操作,最频繁的就是增删改查操作了。

增删改查指的是在表中增加一条记录、删除一条记录、修改一条记录、查询一条记录。

insert into student (id, name, age) values (1, '李雷', 21)

表示向数据表student中添加一条数据,这条数据的内容是 (1, '李雷', 21),这些内容的格式是(id, name, age)。

关闭数据库连接之前一定要调用conn.commit(),否则数据更新不成功。

select * from student表示从数据表student中获取所有数据。

它的返回值是一个列表,该列表的每一个元素都是一个元组。

update student set name='猫妹' where id=3

表示更新一条记录,这条记录的id是3,将其name改为猫妹。

delete from student where id=3

表示从数据表中删除一条记录,这条记录的id是3。

怎么样?

不难吧?

你学会了吧?

和数据库连接、断开等这些都是固定的格式,遵守就可以了。

sql语句则学问很多,要精通需要多学习多练习,它是一门编程语言,有没有觉得它和咱们人类语言很接近?

SQL即结构化查询语言(Structured Query Language),是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

好了,我们今天就学到这里吧!

如果遇到什么问题,咱们多多交流,共同解决。

我是猫妹,咱们下次见!



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有